GROUP BY

دستور GROUP BY ردیف‌هایی را که مقادیر یکسانی دارند در ردیف‌های خلاصه گروه‌بندی می‌کند، مانند «تعداد مشتریان در هر کشور را بیابید».

دستور GROUP BY اغلب با توابع انبوه (COUNT()، MAX()، MIN()، SUM()، AVG()) برای گروه بندی مجموعه نتایج توسط یک یا چند ستون استفاده می شود.

در زیر منتخبی از جدول "مشتریان" در پایگاه داده نمونه Northwind آمده است:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1

 
Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4

 
Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

عبارت SQL زیر تعداد مشتریان هر کشور را فهرست می کند:

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;

عبارت SQL زیر تعداد مشتریان را در هر کشور به‌صورت مرتب به کم فهرست می‌کند:

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;